package estadistec.grafico;

import java.awt.*;

import javax.swing.*;

/**
 * @author julatec
 */

/**
 * Cortina. Clase que implementa una ventana inicial que mostrará  mensajes 
 * alusivos a los eventos que suceden cuando se cargan las imágenes y los 
 * ficheros que sean nesesarios para el diseño de la aplicación.
 */
@SuppressWarnings("serial")
public final class EstadistecCortina extends JFrame 
		implements Cortina, ConstantesGraficas{
	
	/**
	 * Mensaje de texto que indica las acciones quoe se estan realizando en
	 * el programa mientras esta levantando.
	 */
	private JLabel mensaje;

	/** Constrctor  que inicializa la ventana
	 * @throws HeadlessException
	 */
	public EstadistecCortina() throws HeadlessException {
		this(TITULO_APLICACION);
	}

	/**
	 * Construye la ventana y le establece el titulo correspondiente.
	 * @param title
	 * @throws HeadlessException
	 */
	public EstadistecCortina(String title) throws HeadlessException {
		super(title);
		setSize(400,300);
		setUndecorated(true);
		this.setLocationRelativeTo(null);
		
		JLayeredPane contenido=new JLayeredPane();
		this.setContentPane(contenido);
		
		JLabel fondo=new JLabel(new ImageIcon("res/cargando.png"));
		fondo.setBounds(0,0,400,300);
		contenido.add(fondo, new Integer(0));
		
		mensaje=new JLabel(title);
		mensaje.setBounds(10, 250, 380, 20);
		contenido.add(mensaje, new Integer(1));
		
	    
	    
	}

	/**
	 * Método para iniciar la cortina
	 */
	public void iniciar() {
		setVisible(true);
	}

	/**
	 * Método para mostrar el mensaje
	 */
	public void mostrarMensaje(String mensaje) {		
		this.mensaje.setText(mensaje);
	}

	/**
	 * Método para finalizar la cortina
	 */
	public void terminar() {
		setVisible(false);
		dispose();
	}

}
